MIME-Version: 1.0
Server: CERN/3.0
Date: Monday, 16-Dec-96 23:14:48 GMT
Content-Type: text/html
Content-Length: 2672
Last-Modified: Monday, 26-Aug-96 21:08:54 GMT

<HEAD>
<TITLE>CS512:  Handouts</TITLE>
</HEAD>
<BODY>
<h1> <!WA0><!WA0><!WA0><!WA0><img align=center src="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/lambdahead.gif">CS 512:  Advanced Language Implementation Handouts</h1>

<h2>Handouts:</h2>
<ul>
<li> <!WA1><!WA1><!WA1><!WA1><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/syl.dvi">Course Overview</a> (dvi file)
<li> <!WA2><!WA2><!WA2><!WA2><a href="http://foxnet.cs.cmu.edu/intro-notes.ps">Introduction to SML</a>, R. Harper</i> (postscript file)
<li> <!WA3><!WA3><!WA3><!WA3><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/notes2.dvi">Interpreting the Lambda-Calculus in SML</a> (dvi file)
<dl>
<dt> (Homework:  Due Friday.  Ignore problem 5.)
<dt> (Sample <!WA4><!WA4><!WA4><!WA4><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/soln1.sml">solution</a> to the programming problems.)
</dl>
<li> <!WA5><!WA5><!WA5><!WA5><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/notes3.dvi">Avoiding the Overheads of Substitution</a> (dvi file)
<li> <!WA6><!WA6><!WA6><!WA6><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/notes4.dvi">LAMBDA:  A Lambda-Calculus Based Intermediate Language</a> (dvi file)
<li> <!WA7><!WA7><!WA7><!WA7><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/notes5.dvi">Conventional Optimization of LAMBDA</a> (dvi file)
<li> <!WA8><!WA8><!WA8><!WA8><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/hwk2.dvi">Assignment 2:  Simple Optimization of LAMBDA</a> (dvi file)
<li> Some related optimization documents:
<ul>
<li> <!WA9><!WA9><!WA9><!WA9><a href="http://www.cs.princeton.edu:80/TR/PRINCETONCS:TR-477-94">Making Lambda Calculus Smaller, Faster</a>, A. Appel and Trevor Jim.
<li> <!WA10><!WA10><!WA10><!WA10><a href="http://www.cs.princeton.edu:80/TR/PRINCETONCS:TR-363-92">
	Unrolling Recursions Saves Space</a>, A. Appel.
</ul>
<li> <!WA11><!WA11><!WA11><!WA11><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/notes6.dvi">Closure Conversion of LAMBDA</a> (dvi file)
<li> <!WA12><!WA12><!WA12><!WA12><a href="http://www.cs.cornell.edu/Info/People/jgm/papers/gc-tr.ps">
Abstract Models of Memory Management</a>, G. Morrisett, M. Felleisen, R. Harper
<li> <!WA13><!WA13><!WA13><!WA13><a href="ftp://ftp.cs.utexas.edu/pub/garbage/gcsurvey.ps">Uniprocessor Garbage Collection Techniques</a>, P. Wilson
<li> <!WA14><!WA14><!WA14><!WA14><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/hwk3.dvi">Assignment 3: Optimization, Closure Conversion, and GC</a> (dvi file)
<li> <!WA15><!WA15><!WA15><!WA15><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/gc.sml">A Simple Copying Collector</a> (sml code)
<li> <!WA16><!WA16><!WA16><!WA16><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/notes7.dvi">Introduction to Advanced Control Constructs</a> (dvi file)
<li> <!WA17><!WA17><!WA17><!WA17><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/notes8.dvi">Operational Semantics for Advanced Control Constructs</a> (dvi file)
<li> <!WA18><!WA18><!WA18><!WA18><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/notes9.dvi">Implementing Evaluation Contexts</a> (dvi file)
<li> <!WA19><!WA19><!WA19><!WA19><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/hwk4.dvi">Assignment 4:  Closure Conversion (take 2) and Garbage Collection</a>(dvi file)
<li> <!WA20><!WA20><!WA20><!WA20><a href="http://www.cs.cornell.edu/Info/People/jgm/papers/jgmorris-mlthreads.ps">Adding Threads to Standard ML</a>, E. Cooper and G. Morrisett (postscript)
<li> <!WA21><!WA21><!WA21><!WA21><a href="http://www.cs.cornell.edu/Info/People/jgm/papers/jgmorris-mp.ps">A Portable Multiprocessing Interface for Standard ML of New Jersey</a>,G. Morrisett and A. Tolmach (postscript)
<li> <!WA22><!WA22><!WA22><!WA22><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/cml.ps">CML: A Higher-Order Concurrent Language</a>,J.H. Reppy (postscript)
<li> <!WA23><!WA23><!WA23><!WA23><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/hwk5.dvi">Assignment 5: Fun with Threads and Modules</a>(dvi file)
</ul>


<p>
Back to the <!WA24><!WA24><!WA24><!WA24><a href="http://www.cs.cornell.edu/Info/Courses/Spring-96/CS512/home.html">CS512 homepage.</a>

</BODY>
